﻿using System.Linq;
using System.Collections.Generic;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

namespace Serious
{
    /*
    public abstract class Renderable
    {
        public abstract Matrix transformation { get; }
        public abstract void RenderGruntWork(GraphicsDevice device);

        public void Render(GraphicsDevice device, Effect effect)
        {
            effect.Parameters["xWorld"] = transformation;

            foreach (EffectPass pass in effect.CurrentTechnique.Passes)
            {
                pass.Apply();
                this.RenderGruntWork();
            }
        }
    }

    public class MultiRenderable : Renderable
    {
        List<Renderable> children;

        public MultiRenderable(IEnumerable<Renderable> children)
        {
            this.children = children.ToList();
        }

        public override void Render (GraphicsDevice device)
        {
            foreach (Renderable child in children)
            {
                child.Render(device);
            }
        }
    }
    */
}
